# 8、将元组（90,30,99,89,50,70,60,60,40,50,60）去重并从小到大排序（使用冒泡排序）。
# l=(90,30,99,89,50,70,60,60,40,50,60)
# l=set(l)
# l1=list(l)
# print(l1)
# for i in range(1,len(l1)):
#     for j in range(0,len(l1)-1):
#         if l1[j]>l1[j+1]:
#             l1[j],l1[j+1]=l1[j+1],l1[j]
#         else:
#             continue
# l2=tuple(l1)
# print(l2)

# 9、使用列表推导式分别生成，1~500的5的倍数，1-500的偶数自加5，1到100之间偶数*2，奇数*3
# l=[i for i in range(1,501) if i%5==0]
# print(l)
# l1=[i+5 for i in range(1,501) if i%2==0]
# print(l1)
# l2=[i+2 for i in range(1,501) if i%2==0]
# l3=[i+3 for i in range(1,501,2)]
# print(l2)
# print(l3)
# 16、通过键盘获取两个数，用三元表达式赋值法将最小值赋给变量：iMin
# a=int(input("a="))
# b=int(input("b="))
# c=a if a<b else b
# print(c)
# 13、定义一个形参类型分别是必填项字符串1、，选填字符串2，不定长元组、不定长字典的函数，分别打印出该字符串、元组内容，字典的值
# 分别调用该函数：参数是仅必填项、  必填+选填、不定长元组、不定长字典
# def fan(m,n=2,*t,**d):
#     print(m)
#     print(n)
#     print(*t)
#     print(**d)
# fan(3,4,("abd",23,"hj",234),{id:='shd',age:=23,sh:=98,sex:='男'})
# 15：题目10中的加、减、乘、除 分别定义成匿名函数，去调用
# f=lambda a,b:a+b
# f1=lambda a,b:a-b
# f2=lambda a,b:a*b
# f3=lambda a,b:a/b
# print(f(2,3),f1(5,4),f2(4,5),f3(8,4))
# 16、分别定义加、减、乘、除 普通函数，并分别调用
# def s(a,b):
#     print(a+b)
# s(2,3)
# def s1(a,b):
#     print(a-b)
# s1(8,3)
# def s2(a,b):
#     print(a*b)
# s2(8,9)
# def s3(a, b):
#     print(a/b)
# s3(9,3)
# 17、给16题中的函数增加运算前的说明，运算后的说明
# def s(a,b):
#     print("开始运算了")
#     print(a+b)
#     print("运算结束了")
# s(2,3)
# def s1(a,b):
#     print("开始运算了")
#     print(a-b)
#     print("运算结束了")
# s1(8,3)
# def s2(a,b):
#     print("开始运算了")
#     print(a*b)
#     print("运算结束了")
# s2(8,9)
# def s3(a, b):
#     print("开始运算了")
#     print(a/b)
#     print("运算结束了")
# s3(9,3)
l=[i for i in range(1,101)]
l1=[i+2 for i in range(1,101) if i%8==0]
l3=[i+2 for i in range(1,101,2)]
l4=[i*2 for i in range(2,101,2)]
f=lambda a,b:a*b
def log(m,n=2,*t,**d):
    print(m,n,*t,**d)
log(3,3,("we",45),ds=78)#赋值不能为空，不能跳过赋值

def outer(f):
    print("wk")
    def inner(*t):
        print(f"今天是{f}")
        print()